# Generated from C:/workspace/mathsolver_engine\mathparser.g4 by ANTLR 4.6
# encoding: utf-8
from __future__ import print_function
from antlr4 import *
from io import StringIO


def serializedATN():
    with StringIO() as buf:
        buf.write(u"\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\2")
        buf.write(u"\22\u0080\b\1\4\2\t\2\4\3\t\3\4\4\t\4\4\5\t\5\4\6\t\6")
        buf.write(u"\4\7\t\7\4\b\t\b\4\t\t\t\4\n\t\n\4\13\t\13\4\f\t\f\4")
        buf.write(u"\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\3\2\3")
        buf.write(u"\2\3\2\3\2\3\3\3\3\3\3\3\4\3\4\3\4\3\4\3\4\3\5\3\5\3")
        buf.write(u"\5\3\5\3\5\3\5\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\6\3\7\3")
        buf.write(u"\7\3\7\3\7\3\7\3\b\3\b\3\b\3\b\3\b\3\b\3\b\3\b\3\b\3")
        buf.write(u"\b\3\t\3\t\3\t\3\t\3\t\3\t\3\t\3\t\3\n\3\n\3\n\3\n\3")
        buf.write(u"\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\n\3\13\3\13\3\13\3\13")
        buf.write(u"\3\13\3\13\3\13\3\13\3\13\3\13\3\13\3\f\6\fn\n\f\r\f")
        buf.write(u"\16\fo\3\f\3\f\3\r\3\r\3\16\3\16\3\17\6\17y\n\17\r\17")
        buf.write(u"\16\17z\3\20\3\20\3\21\3\21\2\2\22\3\3\5\4\7\5\t\6\13")
        buf.write(u"\7\r\b\17\t\21\n\23\13\25\f\27\r\31\16\33\17\35\20\37")
        buf.write(u"\21!\22\3\2\4\5\2\13\f\17\17\"\"\5\2\62;C\\c|\u0081\2")
        buf.write(u"\3\3\2\2\2\2\5\3\2\2\2\2\7\3\2\2\2\2\t\3\2\2\2\2\13\3")
        buf.write(u"\2\2\2\2\r\3\2\2\2\2\17\3\2\2\2\2\21\3\2\2\2\2\23\3\2")
        buf.write(u"\2\2\2\25\3\2\2\2\2\27\3\2\2\2\2\31\3\2\2\2\2\33\3\2")
        buf.write(u"\2\2\2\35\3\2\2\2\2\37\3\2\2\2\2!\3\2\2\2\3#\3\2\2\2")
        buf.write(u"\5\'\3\2\2\2\7*\3\2\2\2\t/\3\2\2\2\13\65\3\2\2\2\r=\3")
        buf.write(u"\2\2\2\17B\3\2\2\2\21L\3\2\2\2\23T\3\2\2\2\25a\3\2\2")
        buf.write(u"\2\27m\3\2\2\2\31s\3\2\2\2\33u\3\2\2\2\35x\3\2\2\2\37")
        buf.write(u"|\3\2\2\2!~\3\2\2\2#$\7C\2\2$%\7p\2\2%&\7f\2\2&\4\3\2")
        buf.write(u"\2\2\'(\7Q\2\2()\7t\2\2)\6\3\2\2\2*+\7T\2\2+,\7w\2\2")
        buf.write(u",-\7n\2\2-.\7g\2\2.\b\3\2\2\2/\60\7G\2\2\60\61\7s\2\2")
        buf.write(u"\61\62\7w\2\2\62\63\7c\2\2\63\64\7n\2\2\64\n\3\2\2\2")
        buf.write(u"\65\66\7W\2\2\66\67\7p\2\2\678\7g\2\289\7s\2\29:\7w\2")
        buf.write(u"\2:;\7c\2\2;<\7n\2\2<\f\3\2\2\2=>\7N\2\2>?\7g\2\2?@\7")
        buf.write(u"u\2\2@A\7u\2\2A\16\3\2\2\2BC\7N\2\2CD\7g\2\2DE\7u\2\2")
        buf.write(u"EF\7u\2\2FG\7G\2\2GH\7s\2\2HI\7w\2\2IJ\7c\2\2JK\7n\2")
        buf.write(u"\2K\20\3\2\2\2LM\7I\2\2MN\7t\2\2NO\7g\2\2OP\7c\2\2PQ")
        buf.write(u"\7v\2\2QR\7g\2\2RS\7t\2\2S\22\3\2\2\2TU\7I\2\2UV\7t\2")
        buf.write(u"\2VW\7g\2\2WX\7c\2\2XY\7v\2\2YZ\7g\2\2Z[\7t\2\2[\\\7")
        buf.write(u"G\2\2\\]\7s\2\2]^\7w\2\2^_\7c\2\2_`\7n\2\2`\24\3\2\2")
        buf.write(u"\2ab\7K\2\2bc\7p\2\2cd\7g\2\2de\7s\2\2ef\7w\2\2fg\7c")
        buf.write(u"\2\2gh\7n\2\2hi\7k\2\2ij\7v\2\2jk\7{\2\2k\26\3\2\2\2")
        buf.write(u"ln\t\2\2\2ml\3\2\2\2no\3\2\2\2om\3\2\2\2op\3\2\2\2pq")
        buf.write(u"\3\2\2\2qr\b\f\2\2r\30\3\2\2\2st\7]\2\2t\32\3\2\2\2u")
        buf.write(u"v\7_\2\2v\34\3\2\2\2wy\t\3\2\2xw\3\2\2\2yz\3\2\2\2zx")
        buf.write(u"\3\2\2\2z{\3\2\2\2{\36\3\2\2\2|}\7.\2\2} \3\2\2\2~\177")
        buf.write(u"\7/\2\2\177\"\3\2\2\2\5\2oz\3\b\2\2")
        return buf.getvalue()


class mathparserLexer(Lexer):

    atn = ATNDeserializer().deserialize(serializedATN())

    decisionsToDFA = [ DFA(ds, i) for i, ds in enumerate(atn.decisionToState) ]


    T__0 = 1
    T__1 = 2
    T__2 = 3
    T__3 = 4
    T__4 = 5
    T__5 = 6
    T__6 = 7
    T__7 = 8
    T__8 = 9
    T__9 = 10
    WS = 11
    L_BRACKET = 12
    R_BRACKET = 13
    ATOM = 14
    DELIMITER = 15
    SUB = 16

    modeNames = [ u"DEFAULT_MODE" ]

    literalNames = [ u"<INVALID>",
            u"'And'", u"'Or'", u"'Rule'", u"'Equal'", u"'Unequal'", u"'Less'", 
            u"'LessEqual'", u"'Greater'", u"'GreaterEqual'", u"'Inequality'", 
            u"'['", u"']'", u"','", u"'-'" ]

    symbolicNames = [ u"<INVALID>",
            u"WS", u"L_BRACKET", u"R_BRACKET", u"ATOM", u"DELIMITER", u"SUB" ]

    ruleNames = [ u"T__0", u"T__1", u"T__2", u"T__3", u"T__4", u"T__5", 
                  u"T__6", u"T__7", u"T__8", u"T__9", u"WS", u"L_BRACKET", 
                  u"R_BRACKET", u"ATOM", u"DELIMITER", u"SUB" ]

    grammarFileName = u"mathparser.g4"

    def __init__(self, input=None):
        super(mathparserLexer, self).__init__(input)
        self.checkVersion("4.6")
        self._interp = LexerATNSimulator(self, self.atn, self.decisionsToDFA, PredictionContextCache())
        self._actions = None
        self._predicates = None


